package com.metel.mservice.common.utils;


import java.util.Collections;
import java.util.HashMap;
import java.util.Iterator;
import java.util.Map;
import java.util.Map.Entry;

import org.apache.commons.lang.StringUtils;

import com.metel.mservice.common.bean.PropertyBean;;

/**
 * 파일 서버 주소 변경
 * @author iamnow
 *
 */
public class FileUrlReplacer {
	
	private static final Map<String, String> urlMap = createMap();

	/**
	 * 설정파일에서 맵핑 설정값을 가져와 맵 생성 
	 * @return
	 */
	private static Map<String, String> createMap() {
		Map<String, String> map = new HashMap<String, String>();
		String fileUrlMapping[] = PropertyBean.file_url_mapping;
		for(String urls : fileUrlMapping){
			String url[] = urls.split("\\|");
			if(!StringUtils.isBlank(url[0]) && !StringUtils.isBlank(url[1])){
				map.put(url[0], url[1]);
			}
		}
		return Collections.unmodifiableMap(map);
	}

	/**
	 * @return the urlmap
	 */
	public static Map<String, String> getUrlmap() {
		return urlMap;
	}
	
	/**
	 * 파일 주소 변경
	 * @param src
	 * @return
	 */
	public static String replaceFileUrl(String src){
		Iterator<Entry<String, String>> iterator = urlMap.entrySet().iterator();
		while (iterator.hasNext()) {
			Entry<String, String> entry = (Entry<String, String>) iterator.next();
			src = src.replaceAll(entry.getKey(), entry.getValue());
		}		
		return src;
	}
	
	/**
	 * 파일 주소 InVaild여부
	 * @param src
	 * @return
	 *//*
	public static boolean isFileUrl(String src){
		boolean result = false;
		Iterator<Entry<String, String>> iterator = urlMap.entrySet().iterator();
		while (iterator.hasNext()) {
			Entry<String, String> entry = (Entry<String, String>) iterator.next();
			if(src.contains(entry.getKey())){
				result = true;
				break;
			}
		}		
		return result;
	}*/
}
